package com.xgk.boot.module.core.api.order;

import lombok.Data;

import java.math.BigDecimal;

/**
 * 订单包裹信息数据传输对象
 * 用于前端展示和接口传输，不包含时间等敏感字段
 */
@Data
public class OrderBoxDTO {
    /**
     * 主键ID
     */
    private Integer obId;

    /**
     * 包裹编号
     */
    private String boxCode;

    /**
     * 关联订单编号
     */
    private String orderCode;

    /**
     * 服务商单号
     */
    private String serviceNumber;

    /**
     * 物流跟踪号
     */
    private String trackingNumber;

    /**
     * 服务商费用
     */
    private BigDecimal serviceProviderFee;

    /**
     * 服务商称重(kg)
     */
    private BigDecimal serviceProviderWeight;

    /**
     * 包裹重量(kg)
     */
    private BigDecimal boxWeight;

    /**
     * 包裹实际重量(kg)
     */
    private BigDecimal boxActualWeight;

    /**
     * 包裹体积重量(kg)
     */
    private BigDecimal boxVolWeight;

    /**
     * 包裹长度(cm)
     */
    private BigDecimal boxLength;

    /**
     * 包裹宽度(cm)
     */
    private BigDecimal boxWidth;

    /**
     * 包裹高度(cm)
     */
    private BigDecimal boxHeight;

    /**
     * 申报价值
     */
    private BigDecimal boxDeclaredValue;

    /**
     * 保险价值
     */
    private BigDecimal boxInsuranceValue;

    /**
     * 运费
     */
    private BigDecimal boxShippingFee;

    /**
     * 原始运费
     */
    private BigDecimal boxOrgShippingFee;

    /**
     * 货币代码
     */
    private String currencyCode;

    /**
     * 汇率
     */
    private BigDecimal currencyRate;

    /**
     * 物流状态
     * 0:未发货 1:运输中 2:已签收 3:异常
     */
    private Integer boxTrackingStatus;

    /**
     * 面单URL或Base64
     */
    private String boxLabel;

}
